package com.itheima.stock.mapper;

import com.itheima.stock.common.domain.InnerMarketDomain;
import com.itheima.stock.common.domain.Stock4EvrDayDomain;
import com.itheima.stock.common.domain.Stock4MinuteDomain;
import com.itheima.stock.common.domain.StockUpdownDomain;
import com.itheima.stock.pojo.StockBlockRtInfo;
import com.itheima.stock.pojo.SysUser;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;

/**
* @author 10589
* @description 针对表【sys_user(用户表)】的数据库操作Mapper
* @createDate 2022-03-13 15:13:24
* @Entity com.itheima.stock.pojo.SysUser
*/
@Mapper
public interface SysUserMapper {

    int deleteByPrimaryKey(Long id);

    int insert(SysUser record);

    int insertSelective(SysUser record);

    SysUser selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(SysUser record);

    int updateByPrimaryKey(SysUser record);

    SysUser selectByUsername(@Param("username") String username);

    List<InnerMarketDomain> stockmarket(@Param("innerIds") List<String> innerIds,@Param("curTime") String curTime);

    List<StockBlockRtInfo> stockBlockRtInfo(@Param("curtime") String curtime);

    ArrayList<StockUpdownDomain> increase(@Param("curTime") String curTime);

    List<StockUpdownDomain> stockAll(@Param("page") Integer page, @Param("size") Integer size);

    List<Map<String, String>> stockUpdownCount(@Param("openDate") String openDate, @Param("closeDate") String closeDate, @Param("i") int i);

    List<Map<String, String>> tradevol(@Param("inner") List<String> inner, @Param("openDate") Date openDate, @Param("closeDate") Date closeDate);

    List<Map<String, String>> updown(@Param("lastDate4Stock") Date lastDate4Stock);

    List<Stock4MinuteDomain> timeSharing( @Param("date") String date,@Param("code") String code);

    List<String> getClosePrice(@Param("openDay1") String openDay1, @Param("lastDay1") String lastDay1, @Param("code") String code);

    List<Stock4EvrDayDomain> getClosePrice2(@Param("closePrice") List<String> closePrice, @Param("code") String code);
}
